home *** CD-ROM | disk | FTP | other *** search
- /*
- * Wsm.h
- *
- * Copyright 2000, Silicon Graphics, Inc.
- * ALL RIGHTS RESERVED
- *
- * UNPUBLISHED -- Rights reserved under the copyright laws of the United
- * States. Use of a copyright notice is precautionary only and does not
- * imply publication or disclosure.
- *
- * U.S. GOVERNMENT RESTRICTED RIGHTS LEGEND:
- * Use, duplication or disclosure by the Government is subject to restrictions
- * as set forth in FAR 52.227.19(c)(2) or subparagraph (c)(1)(ii) of the Rights
- * in Technical Data and Computer Software clause at DFARS 252.227-7013 and/or
- * in similar or successor clauses in the FAR, or the DOD or NASA FAR
- * Supplement. Contractor/manufacturer is Silicon Graphics, Inc.,
- * 2011 N. Shoreline Blvd. Mountain View, CA 94039-7311.
- *
- * THE CONTENT OF THIS WORK CONTAINS CONFIDENTIAL AND PROPRIETARY
- * INFORMATION OF SILICON GRAPHICS, INC. ANY DUPLICATION, MODIFICATION,
- * DISTRIBUTION, OR DISCLOSURE IN ANY FORM, IN WHOLE, OR IN PART, IS STRICTLY
- * PROHIBITED WITHOUT THE PRIOR EXPRESS WRITTEN PERMISSION OF SILICON
- * GRAPHICS, INC.
- */
- /* $XConsortium: Wsm.h /main/cde1_maint/1 1995/07/17 18:07:48 drk $ */
- /*
- * (c) Copyright 1993, 1994 Hewlett-Packard Company
- * (c) Copyright 1993, 1994 International Business Machines Corp.
- * (c) Copyright 1993, 1994 Sun Microsystems, Inc.
- * (c) Copyright 1993, 1994 Novell, Inc.
- */
-
- #ifndef _Dt_Wsm_h
- #define _Dt_Wsm_h
-
- #include <X11/Intrinsic.h>
-
- #ifdef __cplusplus
- extern "C" {
- #endif
-
-
- /*
- * Constants
- */
-
- #define DtWSM_REASON_ADD 0
- #define DtWSM_REASON_DELETE 1
- #define DtWSM_REASON_BACKDROP 2
- #define DtWSM_REASON_TITLE 3
- #define DtWSM_REASON_CURRENT 4
-
-
- /*
- * Types
- */
-
- /* Workspace property information */
-
- typedef struct _DtWsmWorkspaceInfo {
- Atom workspace;
- unsigned long bg;
- unsigned long fg;
- Atom backdropName;
- int colorSetId;
- char *pchTitle;
- Window *backdropWindows;
- int numBackdropWindows;
- } DtWsmWorkspaceInfo;
-
-
- /* Workspace modified callback reasons */
-
- typedef int DtWsmWsReason;
-
- /* Workspace callback context (opaque) */
-
- typedef struct _DtWsmCBContext * DtWsmCBContext;
-
- /* Workspace callback prototype */
-
- typedef void (*DtWsmWsChangeProc)(
- Widget widget,
- Atom aWs,
- XtPointer client_data);
-
- /* Workspace modified callback prototype */
-
- typedef void (*DtWsmWsModifiedProc)(
- Widget widget,
- Atom aWs,
- DtWsmWsReason reason,
- XtPointer client_data);
-
-
- /*
- * Functions
- */
-
- extern void DtWsmAddWorkspaceFunctions(
- Display *display,
- Window client);
-
- extern void DtWsmRemoveWorkspaceFunctions(
- Display *display,
- Window client);
-
- extern Status DtWsmGetWorkspaceInfo(
- Display *display,
- Window root,
- Atom aWS,
- DtWsmWorkspaceInfo **ppWsInfo);
-
- extern void DtWsmFreeWorkspaceInfo(
- DtWsmWorkspaceInfo *pWsInfo);
-
- extern Status DtWsmGetWorkspaceList(
- Display *display,
- Window root,
- Atom **ppWorkspaceList,
- int *pNumWorkspaces);
-
- extern Status DtWsmGetCurrentWorkspace(
- Display *display,
- Window root,
- Atom *paWorkspace);
-
- extern DtWsmCBContext DtWsmAddCurrentWorkspaceCallback(
- Widget widget,
- DtWsmWsChangeProc ws_change,
- XtPointer client_data);
-
- extern void DtWsmRemoveWorkspaceCallback(
- DtWsmCBContext pCbCtx);
-
- extern Status DtWsmSetCurrentWorkspace(
- Widget widget,
- Atom aWs);
-
- extern int DtWsmGetWorkspacesOccupied(
- Display *display,
- Window window,
- Atom **ppaWs,
- unsigned long *pNumWs);
-
- extern void DtWsmSetWorkspacesOccupied(
- Display *display,
- Window window,
- Atom *pWsHints,
- unsigned long numHints);
-
- extern void DtWsmOccupyAllWorkspaces(
- Display *display,
- Window window);
-
- extern DtWsmCBContext DtWsmAddWorkspaceModifiedCallback(
- Widget widget,
- DtWsmWsModifiedProc ws_modified,
- XtPointer client_data);
-
- extern Window DtWsmGetCurrentBackdropWindow(
- Display *display,
- Window root);
-
- #ifdef __cplusplus
- }
- #endif
-
- #endif /* _Dt_Wsm_h */
-